package com.cleaningcloud.erp.service;

import com.cleaningcloud.erp.domain.ErpWareCheck;
import com.cleaningcloud.erp.domain.dto.ErpWareCheckDto;
import com.cleaningcloud.erp.domain.vo.ErpWareCheckVo;

import java.util.List;

/**
 * 库存盘点Service接口
 *
 * @author cleaningcloud
 * @date 2024-10-08
 */
public interface IErpWareCheckService {
    /**
     * 查询库存盘点
     *
     * @param wareCheckId 库存盘点主键
     * @return 库存盘点
     */
    ErpWareCheckVo selectErpWareCheckByWareCheckId(Long wareCheckId);

    /**
     * 查询库存盘点列表
     *
     * @param erpWareCheck 库存盘点
     * @return 库存盘点集合
     */
    List<ErpWareCheckVo> selectErpWareCheckList(ErpWareCheck erpWareCheck);

    /**
     * 新增库存盘点
     *
     * @param erpWareCheck 库存盘点
     * @return 结果
     */
    int insertErpWareCheck(ErpWareCheckDto erpWareCheck);

    /**
     * 修改库存盘点
     *
     * @param erpWareCheck 库存盘点
     * @return 结果
     */
    int updateErpWareCheck(ErpWareCheckDto erpWareCheck);

    /**
     * 批量删除库存盘点
     *
     * @param wareCheckIds 需要删除的库存盘点主键集合
     * @return 结果
     */
    int deleteErpWareCheckByWareCheckIds(Long[] wareCheckIds);

    /**
     * 删除库存盘点信息
     *
     * @param wareCheckId 库存盘点主键
     * @return 结果
     */
    int deleteErpWareCheckByWareCheckId(Long wareCheckId);


    /**
     * 审核库存盘点单
     *
     * @param erpWareCheck
     * @return
     */
    int auditErpWareCheck(ErpWareCheck erpWareCheck);


}
